<template>
  <div>
    <!--
    el-table: 饿了么自定义的table标签
    :data：绑定 data是自定义标签中的属性
    tableData：是从data()中返回的 也就是说我们表格的数据 是从下面的data()中取出来的！
    border：边框
    <el-table-column：饿了么自定义标签 表示的是一个列
     prop：字段名称
     label：表头名称
     width：表格的宽度
    -->
    <el-table
      :data="table"
      border
      style="width: 100%">
      <el-table-column
        prop="id"
        label="编号"
        width="180">
      </el-table-column>
      <el-table-column
        prop="name"
        label="姓名"
        width="180">
      </el-table-column>
      <el-table-column
        prop="phone"
        label="手机号"
        width="180">
      </el-table-column>
      <el-table-column
        prop="email"
        label="邮箱"
        width="180">
      </el-table-column>
      <el-table-column
        prop="createTime"
        label="创建时间"
        width="180">
      </el-table-column>
      <el-table-column
        prop="address"
        label="地址">
      </el-table-column>

    </el-table>
    <!--分页插件-->
    <!--
    layout:布局
    :total:总条数 应该从data()中拿取
    :current-page:当前页
    :page-size：每页条数
     @current-change：监听页码变化
    -->
    <el-pagination
      background
      align="right"
      layout="prev, pager, next"
      @current-change="gotoPage"
      :total="totals"
      :current-page="currentPage"
      :page-size="pageSize">
    </el-pagination>

  </div>
</template>

<!-- script里面才是我们的js代码-->
<script>
// 局部引用axios

export default {
  data() {
    return {
      // 应该是后端返回
      totals: 0,
      currentPage: 1,
      pageSize: 5,
      table: []
    }
  },
  methods:{
    gotoPage(curr){
      console.log(curr)
      // curr就是当前页码
      // 将目前点击的页码 给到我们的currentPage
      this.currentPage = curr;

      this.userList()
    },
    // 使用axios发送请求
    userList(){
      // axios 发送请求定义格式
      this.$http.post('/list',{"currentPage":this.currentPage,"pageSize":this.pageSize})
        .then(result=>{
          // 回调函数 当后端正常返回数据的时候 走这里
          // 拿到后端返回数据 result.data获取的是我们当前接口返回的对象
          this.table = result.data.data;
          this.totals = result.data.totals;
        })
        .catch(result=>{
          // 请求不到后端  比如 404 就会走这里
          alert("网络不通，请稍后重试！")
        })
    }
  },
  // 钩子
  mounted() {
    this.userList();
  }
}
</script>
